home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_tcpdump.idb / usr / freeware / catman / u_man / cat1 / tcpdump.Z / tcpdump
Encoding:
Text File  |  1999-04-16  |  60.6 KB  |  1,255 lines

  1.  
  2.  
  3.  
  4.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.       tcpdump - dump traffic on a network
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.       ttttccccppppdddduuuummmmpppp [ ----aaaaddddeeeeffffllllnnnnNNNNOOOOppppqqqqSSSSttttvvvvxxxx ] [    ----cccc _c_o_u_n_t ] [ ----FFFF    _f_i_l_e ]
  13.           [ ----iiii _i_n_t_e_r_f_a_c_e ] [ ----rrrr    _f_i_l_e ] [ ----ssss _s_n_a_p_l_e_n ]
  14.           [ ----TTTT _t_y_p_e ] [    ----wwww _f_i_l_e    ] [ _e_x_p_r_e_s_s_i_o_n ]
  15.  
  16.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.       _T_c_p_d_u_m_p prints out the  headers  of  packets    on  a  network
  18.       interface that match the boolean _e_x_p_r_e_s_s_i_o_n.
  19.  
  20.       UUUUnnnnddddeeeerrrr    SSSSuuuunnnnOOOOSSSS wwwwiiiitttthhhh nnnniiiitttt oooorrrr bbbbppppffff::::    To run _t_c_p_d_u_m_p you  must  have
  21.       read    access    to  /_d_e_v/_n_i_t or    /_d_e_v/_b_p_f*.  UUUUnnnnddddeeeerrrr SSSSoooollllaaaarrrriiiissss wwwwiiiitttthhhh
  22.       ddddllllppppiiii::::    You must  have    read  access  to  the  network    pseudo
  23.       device,  e.g.      /_d_e_v/_l_e.  UUUUnnnnddddeeeerrrr HHHHPPPP----UUUUXXXX    wwwwiiiitttthhhh ddddllllppppiiii:::: You must be
  24.       root or it must be installed setuid  to  root.   UUUUnnnnddddeeeerrrr  IIIIRRRRIIIIXXXX
  25.       wwwwiiiitttthhhh    ssssnnnnoooooooopppp:::: You must    be root    or it must be installed    setuid
  26.       to root.  UUUUnnnnddddeeeerrrr LLLLiiiinnnnuuuuxxxx:::: You  must  be    root  or  it  must  be
  27.       installed  setuid  to     root.    UUUUnnnnddddeeeerrrr UUUUllllttttrrrriiiixxxx aaaannnndddd DDDDiiiiggggiiiittttaaaallll UUUUNNNNIIIIXXXX::::
  28.       Once the super-user has enabled  promiscuous-mode  operation
  29.       using    _p_f_c_o_n_f_i_g(8), any user may run ttttccccppppdddduuuummmmpppp.    UUUUnnnnddddeeeerrrr BBBBSSSSDDDD:::: You
  30.       must have read access    to /_d_e_v/_b_p_f*.
  31.  
  32.      OOOOPPPPTTTTIIIIOOOONNNNSSSS
  33.       ----aaaa   Attempt to convert network and broadcast     addresses  to
  34.            names.
  35.  
  36.       ----cccc   Exit after receiving _c_o_u_n_t packets.
  37.  
  38.       ----dddd   Dump the     compiled  packet-matching  code  in  a     human
  39.            readable    form to    standard output    and stop.
  40.  
  41.       ----dddddddd  Dump packet-matching code as a CCCC    program    fragment.
  42.  
  43.       ----dddddddddddd Dump packet-matching code as decimal numbers  (preceded
  44.            with a count).
  45.  
  46.       ----eeee   Print the link-level header on each dump    line.
  47.  
  48.       ----ffff   Print `foreign' internet    addresses  numerically    rather
  49.            than  symbolically  (this  option  is  intended    to get
  50.            around serious  brain  damage  in  Sun's     yp  server  -
  51.            usually it hangs    forever    translating non-local internet
  52.            numbers).
  53.  
  54.       ----FFFF   Use _f_i_l_e     as  input  for     the  filter  expression.   An
  55.            additional  expression  given  on  the  command line is
  56.            ignored.
  57.  
  58.       ----iiii   Listen on _i_n_t_e_r_f_a_c_e.  If    unspecified, _t_c_p_d_u_m_p  searches
  59.            the  system  interface  list  for  the lowest numbered,
  60.  
  61.  
  62.  
  63.      Page 1                          (printed 2/6/99)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  71.  
  72.  
  73.  
  74.            configured up interface (excluding loopback).  Ties are
  75.            broken by choosing the earliest match.
  76.  
  77.       ----llll   Make stdout line    buffered.  Useful if you want  to  see
  78.            the data    while capturing    it.  E.g.,
  79.            ``tcpdump  -l  |     tee  dat''   or   ``tcpdump  -l     >
  80.            dat  &  tail  -f     dat''.
  81.  
  82.       ----nnnn   Don't convert addresses    (i.e.,    host  addresses,  port
  83.            numbers,    etc.) to names.
  84.  
  85.       ----NNNN   Don't print domain name qualification  of  host    names.
  86.            E.g.,  if  you  give  this flag then _t_c_p_d_u_m_p will print
  87.            ``nic'' instead of ``nic.ddn.mil''.
  88.  
  89.       ----OOOO   Do not run the packet-matching code optimizer.  This is
  90.            useful only if you suspect a bug    in the optimizer.
  91.  
  92.       ----pppp   _D_o_n'_t put the interface into  promiscuous  mode.      Note
  93.            that  the  interface  might  be in promiscuous mode for
  94.            some other reason; hence, `-p' cannot  be  used    as  an
  95.            abbreviation  for  `ether host {local-hw-addr} or ether
  96.            broadcast'.
  97.  
  98.       ----qqqq   Quick (quiet?) output.  Print less protocol information
  99.            so output lines are shorter.
  100.  
  101.       ----rrrr   Read packets from _f_i_l_e (which was created with  the  -w
  102.            option).     Standard input    is used    if _f_i_l_e    is ``-''.
  103.  
  104.       ----ssss   Snarf _s_n_a_p_l_e_n bytes of data  from  each    packet    rather
  105.            than  the  default of 68    (with SunOS's NIT, the minimum
  106.            is actually 96).     68 bytes is adequate  for  IP,     ICMP,
  107.            TCP  and    UDP but    may truncate protocol information from
  108.            name server  and     NFS  packets  (see  below).   Packets
  109.            truncated  because  of a    limited    snapshot are indicated
  110.            in the output with ``[|_p_r_o_t_o]'',     where    _p_r_o_t_o  is  the
  111.            name  of    the protocol level at which the    truncation has
  112.            occurred.   Note     that  taking  larger  snapshots  both
  113.            increases  the  amount  of  time     it  takes  to process
  114.            packets    and,  effectively,  decreases  the  amount  of
  115.            packet  buffering.   This may cause packets to be lost.
  116.            You should limit    _s_n_a_p_l_e_n    to the    smallest  number  that
  117.            will capture the    protocol information you're interested
  118.            in.
  119.  
  120.       ----TTTT   Force  packets    selected   by    "_e_x_p_r_e_s_s_i_o_n"   to   be
  121.            interpreted  the     specified _t_y_p_e. Currently known types
  122.            are  rrrrppppcccc     (Remote  Procedure  Call),   rrrrttttpppp   (Real-Time
  123.            Applications  protocol),     rrrrttttccccpppp  (Real-Time Applications
  124.            control protocol), vvvvaaaatttt  (Visual    Audio  Tool),  and  wwwwbbbb
  125.            (distributed White Board).
  126.  
  127.  
  128.  
  129.      Page 2                          (printed 2/6/99)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  137.  
  138.  
  139.  
  140.       ----SSSS   Print absolute,    rather    than  relative,     TCP  sequence
  141.            numbers.
  142.  
  143.       ----tttt   _D_o_n'_t print a timestamp on each dump line.
  144.  
  145.       ----tttttttt  Print an    unformatted timestamp on each dump line.
  146.  
  147.       ----vvvv   (Slightly more) verbose output.    For example, the  time
  148.            to live and type    of service information in an IP    packet
  149.            is printed.
  150.  
  151.       ----vvvvvvvv  Even more  verbose  output.   For  example,  additional
  152.            fields are printed from NFS reply packets.
  153.  
  154.       ----wwww   Write the raw packets to    _f_i_l_e rather than  parsing  and
  155.            printing     them out.  They can later be printed with the
  156.            -r option.  Standard output is used if _f_i_l_e is ``-''.
  157.  
  158.       ----xxxx   Print each packet (minus    its link level header) in hex.
  159.            The  smaller of the entire packet or _s_n_a_p_l_e_n bytes will
  160.            be printed.
  161.  
  162.        _e_x_p_r_e_s_s_i_o_n
  163.            selects which packets will be dumped.  If no _e_x_p_r_e_s_s_i_o_n
  164.            is  given,  all    packets     on  the  net  will be dumped.
  165.            Otherwise, only packets for which _e_x_p_r_e_s_s_i_o_n is    `true'
  166.            will be dumped.
  167.  
  168.            The _e_x_p_r_e_s_s_i_o_n consists    of  one     or  more  _p_r_i_m_i_t_i_v_e_s.
  169.            Primitives  usually  consist  of    an _i_d (name or number)
  170.            preceded    by one or more qualifiers.   There  are     three
  171.            different kinds of qualifier:
  172.  
  173.            _t_y_p_e qualifiers say what    kind of    thing the id  name  or
  174.             number  refers  to.      Possible types are hhhhoooosssstttt, nnnneeeetttt
  175.             and    ppppoooorrrrtttt.  E.g., `host foo',  `net    128.3',     `port
  176.             20'.   If  there  is  no  type  qualifier, hhhhoooosssstttt is
  177.             assumed.
  178.  
  179.            _d_i_r  qualifiers specify a particular transfer direction
  180.             to    and/or    from  _i_d. Possible directions are ssssrrrrcccc,
  181.             ddddsssstttt, ssssrrrrcccc oooorrrr    ddddsssstttt and    ssssrrrrcccc aaaannnndddd    ddddsssstttt.  E.g., `src foo',
  182.             `dst  net  128.3', `src or dst port    ftp-data'.  If
  183.             there is no    dir qualifier, ssssrrrrcccc oooorrrr ddddsssstttt is  assumed.
  184.             For     `null'     link  layers  (i.e.  point  to     point
  185.             protocols such as slip) the    iiiinnnnbbbboooouuuunnnndddd     and  oooouuuuttttbbbboooouuuunnnndddd
  186.             qualifiers    can  be     used  to  specify  a  desired
  187.             direction.
  188.  
  189.            _p_r_o_t_o
  190.             qualifiers restrict     the  match  to     a  particular
  191.             protocol.    Possible protos    are:  eeeetttthhhheeeerrrr, ffffddddddddiiii, iiiipppp,
  192.  
  193.  
  194.  
  195.      Page 3                          (printed 2/6/99)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  203.  
  204.  
  205.  
  206.             aaaarrrrpppp, rrrraaaarrrrpppp, ddddeeeeccccnnnneeeetttt, llllaaaatttt, ssssccccaaaa, mmmmoooopppprrrrcccc,    mmmmooooppppddddllll, ttttccccpppp and
  207.             uuuuddddpppp.  E.g.,    `ether src foo', `arp net 128.3', `tcp
  208.             port 21'.  If there    is  no    proto  qualifier,  all
  209.             protocols  consistent  with     the type are assumed.
  210.             E.g., `src foo' means `(ip or  arp    or  rarp)  src
  211.             foo' (except the latter is not legal syntax), `net
  212.             bar' means `(ip or arp or rarp) net    bar' and `port
  213.             53'    means `(tcp or udp) port 53'.
  214.  
  215.            [`fddi' is actually an alias for     `ether';  the    parser
  216.            treats  them  identically  as  meaning  ``the data link
  217.            level used on the specified network interface.''      FDDI
  218.            headers    contain     Ethernet-like    source and destination
  219.            addresses,  and    often  contain    Ethernet-like    packet
  220.            types,  so  you can filter on these FDDI    fields just as
  221.            with the    analogous Ethernet fields.  FDDI headers  also
  222.            contain     other     fields,  but  you  cannot  name  them
  223.            explicitly in a filter expression.]
  224.  
  225.            In addition  to    the  above,  there  are     some  special
  226.            `primitive'  keywords  that  don't  follow the pattern:
  227.            ggggaaaatttteeeewwwwaaaayyyy,     bbbbrrrrooooaaaaddddccccaaaasssstttt,  lllleeeessssssss,  ggggrrrreeeeaaaatttteeeerrrr   and   arithmetic
  228.            expressions.  All of these are described    below.
  229.  
  230.            More complex filter expressions are built up  by     using
  231.            the words aaaannnndddd, oooorrrr and nnnnooootttt to combine primitives.     E.g.,
  232.            `host foo and not port ftp and not port ftp-data'.   To
  233.            save  typing, identical qualifier lists can be omitted.
  234.            E.g., `tcp dst port  ftp     or  ftp-data  or  domain'  is
  235.            exactly    the  same as `tcp dst port ftp or tcp dst port
  236.            ftp-data    or tcp dst port    domain'.
  237.  
  238.            Allowable primitives are:
  239.  
  240.            ddddsssstttt hhhhoooosssstttt    _h_o_s_t
  241.             True if the    IP destination field of    the packet  is
  242.             _h_o_s_t, which    may be either an address or a name.
  243.  
  244.            ssssrrrrcccc hhhhoooosssstttt    _h_o_s_t
  245.             True if the    IP source field    of the packet is _h_o_s_t.
  246.  
  247.            hhhhoooosssstttt _h_o_s_t
  248.             True if either the IP source or destination    of the
  249.             packet is _h_o_s_t.  Any of the    above host expressions
  250.             can    be prepended with the keywords,     iiiipppp,  aaaarrrrpppp,  or
  251.             rrrraaaarrrrpppp as in:
  252.              iiiipppp hhhhoooosssstttt _h_o_s_t
  253.             which is equivalent    to:
  254.              eeeetttthhhheeeerrrr pppprrrroooottttoooo \_i_p aaaannnndddd hhhhoooosssstttt _h_o_s_t
  255.             If _h_o_s_t is a name with multiple IP addresses, each
  256.             address will be checked for    a match.
  257.  
  258.  
  259.  
  260.  
  261.      Page 4                          (printed 2/6/99)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  269.  
  270.  
  271.  
  272.            eeeetttthhhheeeerrrr ddddsssstttt _e_h_o_s_t
  273.             True if the    ethernet destination address is    _e_h_o_s_t.
  274.             _E_h_o_s_t  may    be either a name from /etc/ethers or a
  275.             number (see    _e_t_h_e_r_s(3N) for numeric format).
  276.  
  277.            eeeetttthhhheeeerrrr ssssrrrrcccc _e_h_o_s_t
  278.             True if the    ethernet source    address    is _e_h_o_s_t.
  279.  
  280.            eeeetttthhhheeeerrrr hhhhoooosssstttt _e_h_o_s_t
  281.             True if either the ethernet    source or  destination
  282.             address is _e_h_o_s_t.
  283.  
  284.            ggggaaaatttteeeewwwwaaaayyyy _h_o_s_t
  285.             True if the    packet used _h_o_s_t as a gateway.     I.e.,
  286.             the     ethernet  source  or  destination address was
  287.             _h_o_s_t  but  neither    the  IP     source     nor  the   IP
  288.             destination     was  _h_o_s_t.   _H_o_s_t  must be a name and
  289.             must be found in both /etc/hosts and  /etc/ethers.
  290.             (An    equivalent expression is
  291.              eeeetttthhhheeeerrrr hhhhoooosssstttt _e_h_o_s_t aaaannnndddd nnnnooootttt hhhhoooosssstttt _h_o_s_t
  292.             which can be used with either names    or numbers for
  293.             _h_o_s_t / _e_h_o_s_t.)
  294.  
  295.            ddddsssstttt nnnneeeetttt _n_e_t
  296.             True if the    IP destination address of  the    packet
  297.             has     a  network number of _n_e_t. _N_e_t may be either a
  298.             name from /etc/networks or a network  number  (see
  299.             _n_e_t_w_o_r_k_s(_4)    for details).
  300.  
  301.            ssssrrrrcccc nnnneeeetttt _n_e_t
  302.             True if the    IP source address of the packet    has  a
  303.             network number of _n_e_t.
  304.  
  305.            nnnneeeetttt _n_e_t
  306.             True  if  either  the  IP  source  or  destination
  307.             address of the packet has a    network    number of _n_e_t.
  308.  
  309.            nnnneeeetttt _n_e_t mmmmaaaasssskkkk _m_a_s_k
  310.             True if  the  IP  address  matches    _n_e_t  with  the
  311.             specific  netmask.     May  be qualified with    ssssrrrrcccc or
  312.             ddddsssstttt.
  313.  
  314.            nnnneeeetttt _n_e_t/_l_e_n
  315.             True if the    IP address matches _n_e_t a  netmask  _l_e_n
  316.             bits wide.    May be qualified with ssssrrrrcccc or ddddsssstttt.
  317.  
  318.            ddddsssstttt ppppoooorrrrtttt    _p_o_r_t
  319.             True if the    packet is ip/tcp or ip/udp and    has  a
  320.             destination    port value of _p_o_r_t.  The _p_o_r_t can be a
  321.             number  or    a  name     used  in  /etc/services  (see
  322.             _t_c_p(4P) and    _u_d_p(4P)).  If a    name is    used, both the
  323.             port number    and protocol are checked.  If a    number
  324.  
  325.  
  326.  
  327.      Page 5                          (printed 2/6/99)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  335.  
  336.  
  337.  
  338.             or ambiguous name is used, only the    port number is
  339.             checked  (e.g.,  ddddsssstttt  ppppoooorrrrtttt    555511113333  will  print  both
  340.             tcp/login  traffic    and  udp/who traffic, and ppppoooorrrrtttt
  341.             ddddoooommmmaaaaiiiinnnn will    print both tcp/domain  and  udp/domain
  342.             traffic).
  343.  
  344.            ssssrrrrcccc ppppoooorrrrtttt    _p_o_r_t
  345.             True if the    packet has  a  source  port  value  of
  346.             _p_o_r_t.
  347.  
  348.            ppppoooorrrrtttt _p_o_r_t
  349.             True if either the source or destination  port  of
  350.             the     packet     is  _p_o_r_t.   Any  of  the  above  port
  351.             expressions    can be prepended  with    the  keywords,
  352.             ttttccccpppp    or uuuuddddpppp,    as in:
  353.              ttttccccpppp ssssrrrrcccc ppppoooorrrrtttt _p_o_r_t
  354.             which matches only tcp packets whose  source  port
  355.             is _p_o_r_t.
  356.  
  357.            lllleeeessssssss _l_e_n_g_t_h
  358.             True if the    packet has a length less than or equal
  359.             to _l_e_n_g_t_h.    This is    equivalent to:
  360.              lllleeeennnn <<<<====    _l_e_n_g_t_h....
  361.  
  362.            ggggrrrreeeeaaaatttteeeerrrr _l_e_n_g_t_h
  363.             True if the    packet has a length  greater  than  or
  364.             equal to _l_e_n_g_t_h.  This is equivalent to:
  365.              lllleeeennnn >>>>====    _l_e_n_g_t_h....
  366.  
  367.            iiiipppp pppprrrroooottttoooo    _p_r_o_t_o_c_o_l
  368.             True if the    packet is an ip    packet (see _i_p(4P)) of
  369.             protocol  type _p_r_o_t_o_c_o_l.  _P_r_o_t_o_c_o_l can be a    number
  370.             or one of the names    _i_c_m_p, _i_g_r_p, _u_d_p, _n_d,  or  _t_c_p.
  371.             Note  that    the identifiers    _t_c_p, _u_d_p, and _i_c_m_p are
  372.             also keywords and must be  escaped    via  backslash
  373.             (\), which is \\ in    the C-shell.
  374.  
  375.            eeeetttthhhheeeerrrr bbbbrrrrooooaaaaddddccccaaaasssstttt
  376.             True  if  the  packet  is  an  ethernet  broadcast
  377.             packet.  The _e_t_h_e_r keyword is optional.
  378.  
  379.            iiiipppp bbbbrrrrooooaaaaddddccccaaaasssstttt
  380.             True if the    packet is an IP    broadcast packet.   It
  381.             checks   for  both    the  all-zeroes     and  all-ones
  382.             broadcast conventions,  and     looks    up  the     local
  383.             subnet mask.
  384.  
  385.            eeeetttthhhheeeerrrr mmmmuuuullllttttiiiiccccaaaasssstttt
  386.             True  if  the  packet  is  an  ethernet  multicast
  387.             packet.   The  _e_t_h_e_r keyword is optional.  This is
  388.             shorthand for `eeeetttthhhheeeerrrr[[[[0000]]]] &&&& 1111    !!!!==== 0000'.
  389.  
  390.  
  391.  
  392.  
  393.      Page 6                          (printed 2/6/99)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  401.  
  402.  
  403.  
  404.            iiiipppp mmmmuuuullllttttiiiiccccaaaasssstttt
  405.             True if the    packet is an IP    multicast packet.
  406.  
  407.            eeeetttthhhheeeerrrr pppprrrroooottttoooo _p_r_o_t_o_c_o_l
  408.             True if the    packet    is  of    ether  type  _p_r_o_t_o_c_o_l.
  409.             _P_r_o_t_o_c_o_l  can  be a    number or a name like _i_p, _a_r_p,
  410.             or _r_a_r_p.  Note these identifiers are also keywords
  411.             and     must  be  escaped via backslash (\).  [In the
  412.             case of FDDI  (e.g.,  `ffffddddddddiiii     pppprrrroooottttooooccccoooollll  aaaarrrrpppp'),  the
  413.             protocol   identification  comes  from  the     802.2
  414.             Logical  Link  Control  (LLC)  header,  which   is
  415.             usually   layered  on  top    of  the     FDDI  header.
  416.             _T_c_p_d_u_m_p assumes, when filtering  on     the  protocol
  417.             identifier,     that  all FDDI    packets    include    an LLC
  418.             header, and    that the LLC header  is     in  so-called
  419.             SNAP format.]
  420.  
  421.            ddddeeeeccccnnnneeeetttt ssssrrrrcccc _h_o_s_t
  422.             True if the    DECNET source address is  _h_o_s_t,     which
  423.             may     be  an     address  of the form ``10.123'', or a
  424.             DECNET host    name.  [DECNET host  name  support  is
  425.             only   available   on   Ultrix  systems  that  are
  426.             configured to run DECNET.]
  427.  
  428.            ddddeeeeccccnnnneeeetttt ddddsssstttt _h_o_s_t
  429.             True if the    DECNET destination address is _h_o_s_t.
  430.  
  431.            ddddeeeeccccnnnneeeetttt hhhhoooosssstttt _h_o_s_t
  432.             True if either the DECNET  source  or  destination
  433.             address is _h_o_s_t.
  434.  
  435.            iiiipppp, aaaarrrrpppp,    rrrraaaarrrrpppp, ddddeeeeccccnnnneeeetttt
  436.             Abbreviations for:
  437.              eeeetttthhhheeeerrrr pppprrrroooottttoooo _p
  438.             where _p is one of the above    protocols.
  439.  
  440.            llllaaaatttt, mmmmoooopppprrrrcccc, mmmmooooppppddddllll
  441.             Abbreviations for:
  442.              eeeetttthhhheeeerrrr pppprrrroooottttoooo _p
  443.             where _p is one of the above    protocols.  Note  that
  444.             _t_c_p_d_u_m_p does not currently know how    to parse these
  445.             protocols.
  446.  
  447.            ttttccccpppp, uuuuddddpppp, iiiiccccmmmmpppp
  448.             Abbreviations for:
  449.              iiiipppp pppprrrroooottttoooo _p
  450.             where _p is one of the above    protocols.
  451.  
  452.            _e_x_p_r _r_e_l_o_p _e_x_p_r
  453.             True if the    relation holds,    where _r_e_l_o_p is one  of
  454.             >,    <,  >=,     <=,  =, !=, and _e_x_p_r is an arithmetic
  455.             expression     composed   of      integer    constants
  456.  
  457.  
  458.  
  459.      Page 7                          (printed 2/6/99)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  467.  
  468.  
  469.  
  470.             (expressed    in  standard  C     syntax),  the    normal
  471.             binary operators [+, -, *,    /,  &,    |],  a    length
  472.             operator,  and  special packet data    accessors.  To
  473.             access data    inside the packet, use    the  following
  474.             syntax:
  475.              _p_r_o_t_o [[[[ _e_x_p_r ::::    _s_i_z_e ]]]]
  476.             _P_r_o_t_o is one of eeeetttthhhheeeerrrr,,,, ffffddddddddiiii,,,, iiiipppp,,,, aaaarrrrpppp,,,,  rrrraaaarrrrpppp,,,,  ttttccccpppp,,,,
  477.             uuuuddddpppp,,,, or iiiiccccmmmmpppp, and indicates    the protocol layer for
  478.             the    index operation.  The byte offset, relative to
  479.             the     indicated  protocol  layer, is    given by _e_x_p_r.
  480.             _S_i_z_e is optional and indicates the number of bytes
  481.             in    the  field  of interest; it can    be either one,
  482.             two, or four, and defaults    to  one.   The    length
  483.             operator,  indicated by the    keyword    lllleeeennnn, gives the
  484.             length of the packet.
  485.  
  486.             For    example, `eeeetttthhhheeeerrrr[[[[0000]]]]  &&&&  1111  !!!!====  0000'  catches  all
  487.             multicast traffic.    The expression `iiiipppp[[[[0000]]]] &&&&    0000xxxxffff !!!!====
  488.             5555'    catches     all  IP  packets  with     options.  The
  489.             expression    `iiiipppp[[[[6666::::2222]]]]  &&&&  0000xxxx1111ffffffffffff  ==== 0000' catches only
  490.             unfragmented datagrams and frag zero of fragmented
  491.             datagrams.     This  check  is implicitly applied to
  492.             the    ttttccccpppp and    uuuuddddpppp index operations.    For  instance,
  493.             ttttccccpppp[[[[0000]]]]  always  means  the    first  byte of the TCP
  494.             _h_e_a_d_e_r, and    never  means  the  first  byte    of  an
  495.             intervening    fragment.
  496.  
  497.            Primitives may be combined using:
  498.  
  499.             A parenthesized group of primitives    and  operators
  500.             (parentheses  are special to the Shell and must be
  501.             escaped).
  502.  
  503.             Negation (`!!!!' or `nnnnooootttt').
  504.  
  505.             Concatenation (`&&&&&&&&'    or `aaaannnndddd').
  506.  
  507.             Alternation    (`||||||||' or `oooorrrr').
  508.  
  509.            Negation     has  highest  precedence.   Alternation   and
  510.            concatenation  have equal precedence and    associate left
  511.            to  right.   Note  that    explicit   aaaannnndddd     tokens,   not
  512.            juxtaposition, are now required for concatenation.
  513.  
  514.            If an identifier    is given without a keyword,  the  most
  515.            recent keyword is assumed.  For example,
  516.             nnnnooootttt    hhhhoooosssstttt vvvvssss    aaaannnndddd aaaacccceeee
  517.            is short    for
  518.             nnnnooootttt    hhhhoooosssstttt vvvvssss    aaaannnndddd hhhhoooosssstttt aaaacccceeee
  519.            which should not    be confused with
  520.             nnnnooootttt    (((( hhhhoooosssstttt vvvvssss oooorrrr aaaacccceeee ))))
  521.  
  522.  
  523.  
  524.  
  525.      Page 8                          (printed 2/6/99)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  533.  
  534.  
  535.  
  536.            Expression arguments can    be passed to tcpdump as    either
  537.            a  single  argument or as multiple arguments, whichever
  538.            is  more     convenient.   Generally,  if  the  expression
  539.            contains     Shell metacharacters, it is easier to pass it
  540.            as a single, quoted argument.  Multiple    arguments  are
  541.            concatenated with spaces    before being parsed.
  542.  
  543.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  544.       To print all packets arriving    at or departing    from _s_u_n_d_o_w_n:
  545.            ttttccccppppdddduuuummmmpppp hhhhoooosssstttt ssssuuuunnnnddddoooowwwwnnnn
  546.  
  547.       To print traffic between _h_e_l_i_o_s and either _h_o_t or _a_c_e:
  548.            ttttccccppppdddduuuummmmpppp hhhhoooosssstttt hhhheeeelllliiiioooossss aaaannnndddd \\\\(((( hhhhooootttt oooorrrr aaaacccceeee \\\\))))
  549.  
  550.       To print all IP packets between  _a_c_e    and  any  host    except
  551.       _h_e_l_i_o_s:
  552.            ttttccccppppdddduuuummmmpppp iiiipppp hhhhoooosssstttt aaaacccceeee aaaannnndddd nnnnooootttt hhhheeeelllliiiioooossss
  553.  
  554.       To print all    traffic     between  local     hosts    and  hosts  at
  555.       Berkeley:
  556.            ttttccccppppdddduuuummmmpppp nnnneeeetttt uuuuccccbbbb----eeeetttthhhheeeerrrr
  557.  
  558.       To print all ftp  traffic  through  internet    gateway     _s_n_u_p:
  559.       (note     that  the  expression    is quoted to prevent the shell
  560.       from (mis-)interpreting the parentheses):
  561.            ttttccccppppdddduuuummmmpppp ''''ggggaaaatttteeeewwwwaaaayyyy    ssssnnnnuuuupppp aaaannnndddd ((((ppppoooorrrrtttt ffffttttpppp oooorrrr ffffttttpppp----ddddaaaattttaaaa))))''''
  562.  
  563.       To print traffic neither sourced from    nor destined for local
  564.       hosts     (if  you  gateway to one other    net, this stuff    should
  565.       never    make it    onto your local    net).
  566.            ttttccccppppdddduuuummmmpppp iiiipppp aaaannnndddd nnnnooootttt nnnneeeetttt _l_o_c_a_l_n_e_t
  567.  
  568.       To print the start and end packets (the SYN and FIN packets)
  569.       of each TCP conversation that    involves a non-local host.
  570.            ttttccccppppdddduuuummmmpppp ''''ttttccccpppp[[[[11113333]]]]    &&&& 3333 !!!!==== 0000 aaaannnndddd nnnnooootttt ssssrrrrcccc aaaannnndddd ddddsssstttt nnnneeeetttt _l_o_c_a_l_n_e_t''''
  571.  
  572.       To print IP packets  longer  than  576  bytes     sent  through
  573.       gateway _s_n_u_p:
  574.            ttttccccppppdddduuuummmmpppp ''''ggggaaaatttteeeewwwwaaaayyyy    ssssnnnnuuuupppp aaaannnndddd iiiipppp[[[[2222::::2222]]]] >>>> 555577776666''''
  575.  
  576.       To print IP broadcast    or multicast  packets  that  were  _n_o_t
  577.       sent via ethernet broadcast or multicast:
  578.            ttttccccppppdddduuuummmmpppp ''''eeeetttthhhheeeerrrr[[[[0000]]]] &&&& 1111 ==== 0000 aaaannnndddd iiiipppp[[[[11116666]]]] >>>>==== 222222224444''''
  579.  
  580.       To print all ICMP packets that are not echo requests/replies
  581.       (i.e., not ping packets):
  582.            ttttccccppppdddduuuummmmpppp ''''iiiiccccmmmmpppp[[[[0000]]]]    !!!!==== 8888 aaaannnndddd iiiiccccmmmmpppp[[[[0000]]]] !!!!==== 0000""""
  583.  
  584.      OOOOUUUUTTTTPPPPUUUUTTTT FFFFOOOORRRRMMMMAAAATTTT
  585.       The output of    _t_c_p_d_u_m_p    is protocol dependent.    The  following
  586.       gives     a  brief  description    and  examples  of  most    of the
  587.       formats.
  588.  
  589.  
  590.  
  591.      Page 9                          (printed 2/6/99)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  599.  
  600.  
  601.  
  602.       LLLLiiiinnnnkkkk LLLLeeeevvvveeeellll HHHHeeeeaaaaddddeeeerrrrssss
  603.  
  604.       If the '-e' option  is  given,  the  link  level  header  is
  605.       printed  out.      On  ethernets,  the  source  and destination
  606.       addresses, protocol, and packet length are printed.
  607.  
  608.       On FDDI networks, the     '-e' option causes _t_c_p_d_u_m_p  to     print
  609.       the  `frame  control'     field,      the  source  and destination
  610.       addresses, and the  packet  length.    (The  `frame  control'
  611.       field     governs the interpretation of the rest    of the packet.
  612.       Normal packets (such as those    containing IP  datagrams)  are
  613.       `async'  packets, with a priority value between 0 and    7; for
  614.       example, `aaaassssyyyynnnncccc4444'.  Such packets are assumed to  contain  an
  615.       802.2     Logical  Link Control (LLC) packet; the LLC header is
  616.       printed if it    is _n_o_t an ISO datagram    or  a  so-called  SNAP
  617.       packet.
  618.  
  619.       (_N._B.: _T_h_e _f_o_l_l_o_w_i_n_g _d_e_s_c_r_i_p_t_i_o_n  _a_s_s_u_m_e_s  _f_a_m_i_l_i_a_r_i_t_y  _w_i_t_h
  620.       _t_h_e _S_L_I_P _c_o_m_p_r_e_s_s_i_o_n _a_l_g_o_r_i_t_h_m _d_e_s_c_r_i_b_e_d _i_n _R_F_C-_1_1_4_4.)
  621.  
  622.       On SLIP links, a direction  indicator     (``I''     for  inbound,
  623.       ``O''      for    outbound),   packet   type,   and  compression
  624.       information are printed out.    The  packet  type  is  printed
  625.       first.   The three types are _i_p, _u_t_c_p, and _c_t_c_p.  No further
  626.       link    information  is     printed  for  _i_p  packets.   For  TCP
  627.       packets,  the    connection identifier is printed following the
  628.       type.     If the    packet is compressed, its  encoded  header  is
  629.       printed  out.     The special cases are printed out as ****SSSS++++_n and
  630.       ****SSSSAAAA++++_n, where _n is the    amount by which     the  sequence    number
  631.       (or  sequence     number     and ack) has changed.    If it is not a
  632.       special case,    zero or    more changes are printed.  A change is
  633.       indicated  by     U  (urgent  pointer),    W (window), A (ack), S
  634.       (sequence number), and I (packet ID),    followed  by  a     delta
  635.       (+n  or  -n),     or  a new value (=n).    Finally, the amount of
  636.       data in the packet and compressed header length are printed.
  637.  
  638.       For example, the following line shows    an outbound compressed
  639.       TCP  packet, with an implicit    connection identifier; the ack
  640.       has changed by 6, the    sequence number    by 49, and the    packet
  641.       ID by    6; there are 3 bytes of    data and 6 bytes of compressed
  642.       header:
  643.            OOOO ccccttttccccpppp ****    AAAA++++6666 SSSS++++44449999 IIII++++6666 3333 ((((6666))))
  644.  
  645.  
  646.       AAAARRRRPPPP////RRRRAAAARRRRPPPP PPPPaaaacccckkkkeeeettttssss
  647.  
  648.       Arp/rarp output shows    the type of request and    its arguments.
  649.       The  format  is  intended to be self explanatory.  Here is a
  650.       short    sample taken from the start of an `rlogin'  from  host
  651.       _r_t_s_g to host _c_s_a_m:
  652.            arp who-has csam    tell rtsg
  653.            arp reply csam is-at CSAM
  654.  
  655.  
  656.  
  657.      Page 10                          (printed 2/6/99)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  665.  
  666.  
  667.  
  668.       The first line says that rtsg    sent an    arp packet asking  for
  669.       the  ethernet     address  of internet host csam.  Csam replies
  670.       with    its  ethernet  address    (in  this  example,   ethernet
  671.       addresses are    in caps    and internet addresses in lower    case).
  672.  
  673.       This would look less redundant if we had done    ttttccccppppdddduuuummmmpppp    ----nnnn:
  674.  
  675.            arp who-has 128.3.254.6 tell 128.3.254.68
  676.            arp reply 128.3.254.6 is-at 02:07:01:00:01:c4
  677.  
  678.       If we    had done ttttccccppppdddduuuummmmpppp ----eeee, the fact that the first packet is
  679.       broadcast and    the second is point-to-point would be visible:
  680.            RTSG Broadcast 0806  64:    arp who-has csam tell rtsg
  681.            CSAM RTSG 0806  64: arp reply csam is-at    CSAM
  682.  
  683.       For the first    packet this says the ethernet  source  address
  684.       is  RTSG, the    destination is the ethernet broadcast address,
  685.       the type field contained hex 0806 (type ETHER_ARP)  and  the
  686.       total    length was 64 bytes.
  687.  
  688.       TTTTCCCCPPPP PPPPaaaacccckkkkeeeettttssss
  689.  
  690.       (_N._B.:_T_h_e _f_o_l_l_o_w_i_n_g _d_e_s_c_r_i_p_t_i_o_n _a_s_s_u_m_e_s _f_a_m_i_l_i_a_r_i_t_y _w_i_t_h _t_h_e
  691.       _T_C_P  _p_r_o_t_o_c_o_l    _d_e_s_c_r_i_b_e_d _i_n _R_F_C-_7_9_3.  _I_f _y_o_u _a_r_e _n_o_t _f_a_m_i_l_i_a_r
  692.       _w_i_t_h _t_h_e _p_r_o_t_o_c_o_l, _n_e_i_t_h_e_r _t_h_i_s _d_e_s_c_r_i_p_t_i_o_n _n_o_r _t_c_p_d_u_m_p _w_i_l_l
  693.       _b_e _o_f    _m_u_c_h _u_s_e _t_o _y_o_u.)
  694.  
  695.       The general format of    a tcp protocol line is:
  696.  
  697.            _s_r_c > _d_s_t: _f_l_a_g_s    _d_a_t_a-_s_e_q_n_o _a_c_k _w_i_n_d_o_w _u_r_g_e_n_t _o_p_t_i_o_n_s
  698.       _S_r_c and _d_s_t are the source and destination IP    addresses  and
  699.       ports.   _F_l_a_g_s  are  some combination    of S (SYN), F (FIN), P
  700.       (PUSH) or R (RST) or a single    `.'  (no  flags).   _D_a_t_a-_s_e_q_n_o
  701.       describes  the portion of sequence space covered by the data
  702.       in this packet (see example below).  _A_c_k is sequence    number
  703.       of  the  next     data  expected     the  other  direction on this
  704.       connection.  _W_i_n_d_o_w is the number of bytes of    receive    buffer
  705.       space    available the other direction on this connection.  _U_r_g
  706.       indicates there is `urgent' data in the packet.  _O_p_t_i_o_n_s are
  707.       tcp options enclosed in angle    brackets (e.g.,    <mss 1024>).
  708.  
  709.       _S_r_c, _d_s_t and _f_l_a_g_s are always     present.   The     other    fields
  710.       depend  on  the contents of the packet's tcp protocol    header
  711.       and are output only if appropriate.
  712.  
  713.       Here is the opening portion of an rlogin from    host  _r_t_s_g  to
  714.       host _c_s_a_m.
  715.  
  716.            rtsg.1023 > csam.login: S 768512:768512(0) win 4096 <mss    1024>
  717.            csam.login > rtsg.1023: S 947648:947648(0) ack 768513 win 4096 <mss 1024>
  718.            rtsg.1023 > csam.login: . ack 1 win 4096
  719.            rtsg.1023 > csam.login: P 1:2(1)    ack 1 win 4096
  720.            csam.login > rtsg.1023: . ack 2 win 4096
  721.  
  722.  
  723.      Page 11                          (printed 2/6/99)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  731.  
  732.  
  733.  
  734.            rtsg.1023 > csam.login: P 2:21(19) ack 1    win 4096
  735.            csam.login > rtsg.1023: P 1:2(1)    ack 21 win 4077
  736.            csam.login > rtsg.1023: P 2:3(1)    ack 21 win 4077    urg 1
  737.            csam.login > rtsg.1023: P 3:4(1)    ack 21 win 4077    urg 1
  738.  
  739.       The first line says that tcp port 1023 on rtsg sent a    packet
  740.       to  port  _l_o_g_i_n  on csam.  The SSSS indicates that the _S_Y_N flag
  741.       was set.  The    packet    sequence  number  was  768512  and  it
  742.       contained  no     data.     (The notation is `first:last(nbytes)'
  743.       which    means `sequence    numbers    _f_i_r_s_t up to but    not  including
  744.       _l_a_s_t    which  is  _n_b_y_t_e_s  bytes of user data'.)  There    was no
  745.       piggy-backed ack, the     available  receive  window  was  4096
  746.       bytes     and there was a max-segment-size option requesting an
  747.       mss of 1024 bytes.
  748.  
  749.       Csam replies with a similar  packet  except  it  includes  a
  750.       piggy-backed ack for rtsg's SYN.  Rtsg then acks csam's SYN.
  751.       The `.' means    no flags were set.  The     packet     contained  no
  752.       data so there    is no data sequence number.  Note that the ack
  753.       sequence number is a small  integer  (1).   The  first  time
  754.       ttttccccppppdddduuuummmmpppp  sees     a  tcp    `conversation',    it prints the sequence
  755.       number from  the  packet.   On  subsequent  packets  of  the
  756.       conversation,     the  difference  between the current packet's
  757.       sequence number and this initial sequence number is printed.
  758.       This    means  that  sequence  numbers    after the first    can be
  759.       interpreted as relative byte positions in the    conversation's
  760.       data    stream    (with the first    data byte each direction being
  761.       `1').     `-S' will override this feature, causing the original
  762.       sequence numbers to be output.
  763.  
  764.       On the 6th line, rtsg    sends csam 19 bytes of data  (bytes  2
  765.       through  20  in  the rtsg -> csam side of the    conversation).
  766.       The PUSH flag    is set in the packet.  On the 7th  line,  csam
  767.       says it's received data sent by rtsg up to but not including
  768.       byte 21.  Most of this data is  apparently  sitting  in  the
  769.       socket  buffer  since     csam's     receive  window has gotten 19
  770.       bytes    smaller.  Csam also sends one byte of data to rtsg  in
  771.       this packet.    On the 8th and 9th lines, csam sends two bytes
  772.       of urgent, pushed data to rtsg.
  773.  
  774.       If the snapshot was small enough that    ttttccccppppdddduuuummmmpppp    didn't capture
  775.       the  full TCP    header,    it interprets as much of the header as
  776.       it can and then reports ``[|_t_c_p]'' to    indicate the remainder
  777.       could     not  be  interpreted.    If the header contains a bogus
  778.       option (one with a length that's either too small or    beyond
  779.       the  end of the header), tcpdump reports it as ``[_b_a_d    _o_p_t]''
  780.       and does not    interpret  any    further     options  (since  it's
  781.       impossible  to tell where they start).  If the header    length
  782.       indicates options are    present    but the    IP datagram length  is
  783.       not  long  enough  for  the  options    to  actually be    there,
  784.       tcpdump reports it as    ``[_b_a_d _h_d_r _l_e_n_g_t_h]''.
  785.  
  786.  
  787.  
  788.  
  789.      Page 12                          (printed 2/6/99)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  797.  
  798.  
  799.  
  800.       UUUUDDDDPPPP PPPPaaaacccckkkkeeeettttssss
  801.  
  802.       UDP format is    illustrated by this rwho packet:
  803.  
  804.            actinide.who > broadcast.who: udp 84
  805.       This says that port _w_h_o on host _a_c_t_i_n_i_d_e sent    a udp datagram
  806.       to  port  _w_h_o     on  host  _b_r_o_a_d_c_a_s_t,  the  Internet broadcast
  807.       address.  The    packet contained 84 bytes of user data.
  808.  
  809.       Some    UDP  services  are  recognized    (from  the  source  or
  810.       destination  port  number)  and  the    higher    level protocol
  811.       information printed.    In  particular,     Domain     Name  service
  812.       requests  (RFC-1034/1035)  and  Sun  RPC calls (RFC-1050) to
  813.       NFS.
  814.  
  815.  
  816.       UUUUDDDDPPPP NNNNaaaammmmeeee SSSSeeeerrrrvvvveeeerrrr RRRReeeeqqqquuuueeeessssttttssss
  817.  
  818.       (_N._B.:_T_h_e _f_o_l_l_o_w_i_n_g _d_e_s_c_r_i_p_t_i_o_n _a_s_s_u_m_e_s _f_a_m_i_l_i_a_r_i_t_y _w_i_t_h _t_h_e
  819.       _D_o_m_a_i_n  _S_e_r_v_i_c_e  _p_r_o_t_o_c_o_l _d_e_s_c_r_i_b_e_d _i_n _R_F_C-_1_0_3_5.  _I_f _y_o_u _a_r_e
  820.       _n_o_t _f_a_m_i_l_i_a_r _w_i_t_h _t_h_e    _p_r_o_t_o_c_o_l,  _t_h_e    _f_o_l_l_o_w_i_n_g  _d_e_s_c_r_i_p_t_i_o_n
  821.       _w_i_l_l _a_p_p_e_a_r _t_o _b_e _w_r_i_t_t_e_n _i_n _g_r_e_e_k.)
  822.  
  823.       Name server requests are formatted as
  824.            _s_r_c > _d_s_t: _i_d _o_p? _f_l_a_g_s _q_t_y_p_e _q_c_l_a_s_s _n_a_m_e (_l_e_n)
  825.  
  826.            h2opolo.1538 > helios.domain: 3+    A? ucbvax.berkeley.edu.    (37)
  827.       Host _h_2_o_p_o_l_o asked  the  domain  server  on  _h_e_l_i_o_s  for  an
  828.       address   record   (qtype=A)     associated   with   the  name
  829.       _u_c_b_v_a_x._b_e_r_k_e_l_e_y._e_d_u.     The  query  id     was  `3'.   The   `+'
  830.       indicates  the  _r_e_c_u_r_s_i_o_n  _d_e_s_i_r_e_d  flag was set.  The query
  831.       length was 37    bytes, not including the UDP and  IP  protocol
  832.       headers.   The query operation was the normal    one, _Q_u_e_r_y, so
  833.       the op field was omitted.  If    the op had been    anything else,
  834.       it  would  have  been     printed  between the `3' and the `+'.
  835.       Similarly, the qclass    was the    normal one, _C__I_N, and omitted.
  836.       Any  other  qclass would have    been printed immediately after
  837.       the `A'.
  838.  
  839.       A few    anomalies are checked and may result in     extra    fields
  840.       enclosed in square brackets:    If a query contains an answer,
  841.       name server  or  authority  section,    _a_n_c_o_u_n_t,  _n_s_c_o_u_n_t,  or
  842.       _a_r_c_o_u_n_t are printed as `[_na]', `[_nn]'    or  `[_nau]' where _n is
  843.       the appropriate count.  If any of the    response bits are  set
  844.       (AA,    RA or rcode) or    any of the `must be zero' bits are set
  845.       in bytes two and three, `[b2&3=_x]' is    printed,  where     _x  is
  846.       the hex value    of header bytes    two and    three.
  847.  
  848.  
  849.       UUUUDDDDPPPP NNNNaaaammmmeeee SSSSeeeerrrrvvvveeeerrrr RRRReeeessssppppoooonnnnsssseeeessss
  850.  
  851.       Name server responses    are formatted as
  852.  
  853.  
  854.  
  855.      Page 13                          (printed 2/6/99)
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  863.  
  864.  
  865.  
  866.            _s_r_c > _d_s_t:  _i_d _o_p _r_c_o_d_e _f_l_a_g_s _a/_n/_a_u _t_y_p_e _c_l_a_s_s _d_a_t_a (_l_e_n)
  867.  
  868.            helios.domain > h2opolo.1538: 3 3/3/7 A 128.32.137.3 (273)
  869.            helios.domain > h2opolo.1537: 2 NXDomain* 0/1/0 (97)
  870.       In the first example,    _h_e_l_i_o_s responds    to  query  id  3  from
  871.       _h_2_o_p_o_l_o  with     3 answer records, 3 name server records and 7
  872.       authority records.   The  first  answer  record  is  type  A
  873.       (address)  and  its  data  is    internet address 128.32.137.3.
  874.       The total size of the    response was 273 bytes,    excluding  UDP
  875.       and  IP headers.  The    op (Query) and response    code (NoError)
  876.       were omitted,    as was the class (C_IN)    of the A record.
  877.  
  878.       In the second    example, _h_e_l_i_o_s    responds to  query  2  with  a
  879.       response  code  of  non-existent  domain  (NXDomain) with no
  880.       answers, one name server and no authority records.  The  `*'
  881.       indicates  that the _a_u_t_h_o_r_i_t_a_t_i_v_e _a_n_s_w_e_r bit was set.     Since
  882.       there    were no    answers, no type, class    or data    were printed.
  883.  
  884.       Other    flag characters    that might appear are  `-'  (recursion
  885.       available,  RA,  _n_o_t    set)  and  `|' (truncated message, TC,
  886.       set).     If the    `question' section doesn't contain exactly one
  887.       entry, `[_nq]'    is printed.
  888.  
  889.       Note that name server    requests  and  responses  tend    to  be
  890.       large     and  the  default _s_n_a_p_l_e_n of 68 bytes may not capture
  891.       enough of the    packet to print.  Use the ----ssss flag to  increase
  892.       the snaplen if you need to seriously investigate name    server
  893.       traffic.  `----ssss    111122228888' has worked    well for me.
  894.  
  895.  
  896.  
  897.       NNNNFFFFSSSS RRRReeeeqqqquuuueeeessssttttssss aaaannnndddd RRRReeeepppplllliiiieeeessss
  898.  
  899.       Sun NFS (Network  File  System)  requests  and  replies  are
  900.       printed as:
  901.            _s_r_c._x_i_d > _d_s_t._n_f_s: _l_e_n _o_p _a_r_g_s
  902.            _s_r_c._n_f_s > _d_s_t._x_i_d: _r_e_p_l_y    _s_t_a_t _l_e_n _o_p _r_e_s_u_l_t_s
  903.  
  904.  
  905.            sushi.6709 > wrl.nfs: 112 readlink fh 21,24/10.73165
  906.            wrl.nfs > sushi.6709: reply ok 40 readlink "../var"
  907.            sushi.201b > wrl.nfs:
  908.             144    lookup fh 9,74/4096.6878 "xcolors"
  909.            wrl.nfs > sushi.201b:
  910.             reply ok 128 lookup    fh 9,74/4134.3150
  911.  
  912.       In the first line, host _s_u_s_h_i    sends a     transaction  with  id
  913.       _6_7_0_9    to _w_r_l (note that the number following the src host is
  914.       a transaction    id, _n_o_t    the source port).  The request was 112
  915.       bytes,  excluding the    UDP and    IP headers.  The operation was
  916.       a  _r_e_a_d_l_i_n_k  (read  symbolic    link)  on  file     handle      (_f_h)
  917.       21,24/10.731657119.    (If one    is lucky, as in    this case, the
  918.  
  919.  
  920.  
  921.      Page 14                          (printed 2/6/99)
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  929.  
  930.  
  931.  
  932.       file handle can  be  interpreted  as    a  major,minor    device
  933.       number  pair,     followed  by  the inode number    and generation
  934.       number.)  _W_r_l    replies    `ok' with the contents of the link.
  935.  
  936.       In the third    line,  _s_u_s_h_i  asks  _w_r_l     to  lookup  the  name
  937.       `_x_c_o_l_o_r_s'  in     directory file    9,74/4096.6878.     Note that the
  938.       data printed depends on the operation    type.  The  format  is
  939.       intended  to be self explanatory if read in conjunction with
  940.       an NFS protocol spec.
  941.  
  942.       If the -v (verbose) flag is given, additional    information is
  943.       printed.  For    example:
  944.  
  945.  
  946.            sushi.1372a > wrl.nfs:
  947.             148    read fh    21,11/12.195 8192 bytes    @ 24576
  948.            wrl.nfs > sushi.1372a:
  949.             reply ok 1472 read REG 100664 ids 417/0 sz 29388
  950.  
  951.       (-v also prints the IP header     TTL,  ID,  and     fragmentation
  952.       fields,  which have been omitted from    this example.)    In the
  953.       first    line, _s_u_s_h_i asks _w_r_l to     read  8192  bytes  from  file
  954.       21,11/12.195,     at  byte offset 24576.     _W_r_l replies `ok'; the
  955.       packet shown on the second line is the first fragment    of the
  956.       reply,  and  hence  is only 1472 bytes long (the other bytes
  957.       will follow in subsequent fragments, but these fragments  do
  958.       not  have  NFS  or  even  UDP     headers  and  so might    not be
  959.       printed, depending on    the filter expression used).   Because
  960.       the -v flag is given,    some of    the file attributes (which are
  961.       returned in addition to the file data) are printed: the file
  962.       type    (``REG'', for regular file), the file mode (in octal),
  963.       the uid and gid, and the file    size.
  964.  
  965.       If the -v flag is given more than once,  even     more  details
  966.       are printed.
  967.  
  968.       Note that NFS    requests are very large    and much of the    detail
  969.       won't    be printed unless _s_n_a_p_l_e_n is increased.     Try using `----ssss
  970.       111199992222' to watch    NFS traffic.
  971.  
  972.       NFS  reply  packets  do  not    explicitly  identify  the  RPC
  973.       operation.   Instead,     _t_c_p_d_u_m_p  keeps     track    of  ``recent''
  974.       requests,  and  matches  them     to  the  replies  using   the
  975.       transaction  ID.   If     a  reply  does    not closely follow the
  976.       corresponding    request, it might not be parsable.
  977.  
  978.  
  979.       KKKKIIIIPPPP AAAApppppppplllleeeettttaaaallllkkkk    ((((DDDDDDDDPPPP iiiinnnn    UUUUDDDDPPPP))))
  980.  
  981.       Appletalk DDP    packets    encapsulated in    UDP datagrams are  de-
  982.       encapsulated    and  dumped  as    DDP packets (i.e., all the UDP
  983.       header information is    discarded).  The file /_e_t_c/_a_t_a_l_k._n_a_m_e_s
  984.       is  used  to    translate  appletalk  net  and node numbers to
  985.  
  986.  
  987.      Page 15                          (printed 2/6/99)
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  995.  
  996.  
  997.  
  998.       names.  Lines    in this    file have the form
  999.  
  1000.            _n_u_m_b_e_r     _n_a_m_e
  1001.  
  1002.            1.254          ether
  1003.            16.1     icsd-net
  1004.            1.254.110 ace
  1005.       The first two    lines give the names  of  appletalk  networks.
  1006.       The  third  line gives the name of a particular host (a host
  1007.       is distinguished from    a net by the 3rd octet in the number -
  1008.       a  net  number  _m_u_s_t    have two octets    and a host number _m_u_s_t
  1009.       have three octets.)  The number and name should be separated
  1010.       by  whitespace  (blanks or tabs).  The /_e_t_c/_a_t_a_l_k._n_a_m_e_s file
  1011.       may contain blank lines or  comment  lines  (lines  starting
  1012.       with a `#').
  1013.  
  1014.       Appletalk addresses are printed in the form
  1015.  
  1016.            _n_e_t._h_o_s_t._p_o_r_t
  1017.  
  1018.            144.1.209.2 > icsd-net.112.220
  1019.            office.2    > icsd-net.112.220
  1020.            jssmag.149.235 >    icsd-net.2
  1021.       (If the /_e_t_c/_a_t_a_l_k._n_a_m_e_s doesn't exist or doesn't contain an
  1022.       entry     for  some  appletalk  host/net     number, addresses are
  1023.       printed in numeric form.)  In    the first  example,  NBP  (DDP
  1024.       port    2)  on    net  144.1  node 209 is    sending    to whatever is
  1025.       listening on port 220    of net icsd node 112.  The second line
  1026.       is the same except the full name of the source node is known
  1027.       (`office').  The third line is a send    from port 235  on  net
  1028.       jssmag  node 149 to broadcast    on the icsd-net    NBP port (note
  1029.       that the broadcast address (255) is indicated    by a net  name
  1030.       with    no  host  number - for this reason it's    a good idea to
  1031.       keep node names and net names    distinct in /etc/atalk.names).
  1032.  
  1033.       NBP (name binding protocol) and ATP  (Appletalk  transaction
  1034.       protocol)  packets  have  their contents interpreted.     Other
  1035.       protocols just dump the protocol name    (or number if no  name
  1036.       is registered    for the    protocol) and packet size.
  1037.  
  1038.       NNNNBBBBPPPP ppppaaaacccckkkkeeeettttssss are formatted like the following examples:
  1039.  
  1040.            icsd-net.112.220    > jssmag.2: nbp-lkup 190: "=:LaserWriter@*"
  1041.            jssmag.209.2 > icsd-net.112.220:    nbp-reply 190: "RM1140:LaserWriter@*" 250
  1042.            techpit.2 > icsd-net.112.220: nbp-reply 190: "techpit:LaserWriter@*" 186
  1043.       The first line is a name  lookup  request  for  laserwriters
  1044.       sent    by net icsd host 112 and broadcast on net jssmag.  The
  1045.       nbp id for the lookup    is 190.     The second line shows a reply
  1046.       for  this  request  (note that it has    the same id) from host
  1047.       jssmag.209 saying that it has    a laserwriter  resource     named
  1048.       "RM1140"  registered on port 250.  The third line is another
  1049.       reply     to  the  same    request     saying      host     techpit   has
  1050.  
  1051.  
  1052.  
  1053.      Page 16                          (printed 2/6/99)
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  1061.  
  1062.  
  1063.  
  1064.       laserwriter "techpit"    registered on port 186.
  1065.  
  1066.       AAAATTTTPPPP ppppaaaacccckkkkeeeetttt  formatting  is  demonstrated  by    the  following
  1067.       example:
  1068.  
  1069.            jssmag.209.165 >    helios.132: atp-req  12266<0-7>    0xae030001
  1070.            helios.132 > jssmag.209.165: atp-resp 12266:0 (512) 0xae040000
  1071.            helios.132 > jssmag.209.165: atp-resp 12266:1 (512) 0xae040000
  1072.            helios.132 > jssmag.209.165: atp-resp 12266:2 (512) 0xae040000
  1073.            helios.132 > jssmag.209.165: atp-resp 12266:3 (512) 0xae040000
  1074.            helios.132 > jssmag.209.165: atp-resp 12266:4 (512) 0xae040000
  1075.            helios.132 > jssmag.209.165: atp-resp 12266:5 (512) 0xae040000
  1076.            helios.132 > jssmag.209.165: atp-resp 12266:6 (512) 0xae040000
  1077.            helios.132 > jssmag.209.165: atp-resp*12266:7 (512) 0xae040000
  1078.            jssmag.209.165 >    helios.132: atp-req  12266<3,5>    0xae030001
  1079.            helios.132 > jssmag.209.165: atp-resp 12266:3 (512) 0xae040000
  1080.            helios.132 > jssmag.209.165: atp-resp 12266:5 (512) 0xae040000
  1081.            jssmag.209.165 >    helios.132: atp-rel  12266<0-7>    0xae030001
  1082.            jssmag.209.133 >    helios.132: atp-req* 12267<0-7>    0xae030002
  1083.       Jssmag.209 initiates transaction id 12266 with  host    helios
  1084.       by requesting    up to 8    packets    (the `<0-7>').    The hex    number
  1085.       at the end of    the line is the    value of the `userdata'     field
  1086.       in the request.
  1087.  
  1088.       Helios responds  with     8  512-byte  packets.     The  `:digit'
  1089.       following  the  transaction  id  gives  the  packet sequence
  1090.       number in the    transaction and    the number in  parens  is  the
  1091.       amount of data in the    packet,    excluding the atp header.  The
  1092.       `*' on packet    7 indicates that the EOM bit was set.
  1093.  
  1094.       Jssmag.209  then  requests   that   packets    3   &    5   be
  1095.       retransmitted.  Helios resends them then jssmag.209 releases
  1096.       the transaction.  Finally,  jssmag.209  initiates  the  next
  1097.       request.  The    `*' on the request indicates that XO (`exactly
  1098.       once') was _n_o_t set.
  1099.  
  1100.  
  1101.  
  1102.       IIIIPPPP FFFFrrrraaaaggggmmmmeeeennnnttttaaaattttiiiioooonnnn
  1103.  
  1104.       Fragmented Internet datagrams    are printed as
  1105.            ((((ffffrrrraaaagggg _i_d::::_s_i_z_e@@@@_o_f_f_s_e_t++++))))
  1106.            ((((ffffrrrraaaagggg _i_d::::_s_i_z_e@@@@_o_f_f_s_e_t))))
  1107.  
  1108.       (The first form indicates there  are    more  fragments.   The
  1109.       second indicates this    is the last fragment.)
  1110.  
  1111.       _I_d is    the fragment id.  _S_i_z_e is the fragment size (in    bytes)
  1112.       excluding  the  IP header.  _O_f_f_s_e_t is    this fragment's    offset
  1113.       (in bytes) in    the original datagram.
  1114.  
  1115.       The fragment information is output for each  fragment.   The
  1116.       first    fragment contains the higher level protocol header and
  1117.  
  1118.  
  1119.      Page 17                          (printed 2/6/99)
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  1127.  
  1128.  
  1129.  
  1130.       the frag info    is printed after the protocol info.  Fragments
  1131.       after     the first contain no higher level protocol header and
  1132.       the frag info    is printed after the  source  and  destination
  1133.       addresses.   For  example,  here  is    part  of  an  ftp from
  1134.       arizona.edu to lbl-rtsg.arpa over a  CSNET  connection  that
  1135.       doesn't appear to handle 576 byte datagrams:
  1136.  
  1137.            arizona.ftp-data    > rtsg.1170: . 1024:1332(308) ack 1 win    4096 (frag 595a:328@0+)
  1138.            arizona > rtsg: (frag 595a:204@328)
  1139.            rtsg.1170 > arizona.ftp-data: . ack 1536    win 2560
  1140.       There    are a couple of    things to note here:  First, addresses
  1141.       in the 2nd line don't    include    port numbers.  This is because
  1142.       the TCP protocol information is all in  the  first  fragment
  1143.       and  we  have     no idea what the port or sequence numbers are
  1144.       when we print    the later fragments.  Second, the tcp sequence
  1145.       information  in  the    first line is printed as if there were
  1146.       308 bytes of user data when, in fact,    there  are  512     bytes
  1147.       (308    in  the    first frag and 204 in the second).  If you are
  1148.       looking for holes in the sequence space or trying  to     match
  1149.       up acks with packets,    this can fool you.
  1150.  
  1151.       A packet with    the IP _d_o_n'_t _f_r_a_g_m_e_n_t flag is  marked  with  a
  1152.       trailing ((((DDDDFFFF)))).
  1153.  
  1154.  
  1155.       TTTTiiiimmmmeeeessssttttaaaammmmppppssss
  1156.  
  1157.       By default, all output lines are preceded  by     a  timestamp.
  1158.       The timestamp    is the current clock time in the form
  1159.            _h_h:_m_m:_s_s._f_r_a_c
  1160.       and is as accurate as    the  kernel's  clock.    The  timestamp
  1161.       reflects  the     time  the  kernel  first  saw the packet.  No
  1162.       attempt is made to account for the time lag between when the
  1163.       ethernet interface removed the packet    from the wire and when
  1164.       the kernel serviced the `new packet' interrupt.
  1165.  
  1166.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  1167.       traffic(1C), nit(4P),    bpf(4),    pcap(3)
  1168.  
  1169.      AAAAUUUUTTTTHHHHOOOORRRRSSSS
  1170.       Van Jacobson,    Craig Leres and    Steven    McCanne,  all  of  the
  1171.       Lawrence   Berkeley    National   Laboratory,    University  of
  1172.       California, Berkeley,    CA.
  1173.  
  1174.       The current version is available via anonymous ftp:
  1175.  
  1176.            _f_t_p://_f_t_p._e_e._l_b_l._g_o_v/_t_c_p_d_u_m_p._t_a_r._Z
  1177.  
  1178.      BBBBUUUUGGGGSSSS
  1179.       Please send bug reports to tcpdump@ee.lbl.gov.
  1180.  
  1181.       NIT doesn't let you watch your  own  outbound     traffic,  BPF
  1182.       will.     We recommend that you use the latter.
  1183.  
  1184.  
  1185.      Page 18                          (printed 2/6/99)
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.      TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))           UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((33330000 JJJJuuuunnnneeee 1111999999997777))))        TTTTCCCCPPPPDDDDUUUUMMMMPPPP((((1111))))
  1193.  
  1194.  
  1195.  
  1196.       Some attempt should be made to reassemble IP    fragments  or,
  1197.       at  least  to     compute the right length for the higher level
  1198.       protocol.
  1199.  
  1200.       Name server inverse queries are not  dumped  correctly:  The
  1201.       (empty)  question  section is    printed    rather than real query
  1202.       in the answer    section.  Some believe    that  inverse  queries
  1203.       are    themselves  a  bug  and     prefer     to  fix  the  program
  1204.       generating them rather than tcpdump.
  1205.  
  1206.       Apple    Ethertalk DDP packets could be dumped as easily    as KIP
  1207.       DDP  packets    but  aren't.   Even  if    we were    inclined to do
  1208.       anything to promote the use of Ethertalk  (we     aren't),  LBL
  1209.       doesn't allow    Ethertalk on any of its    networks so we'd would
  1210.       have no way of testing this code.
  1211.  
  1212.       A packet trace that crosses a    daylight savings  time    change
  1213.       will give skewed time    stamps (the time change    is ignored).
  1214.  
  1215.       Filters expressions that manipulate FDDI headers assume that
  1216.       all FDDI packets are encapsulated Ethernet packets.  This is
  1217.       true for IP, ARP, and    DECNET Phase IV, but is    not  true  for
  1218.       protocols  such  as  ISO  CLNS.   Therefore,    the filter may
  1219.       inadvertently    accept certain packets that  do     not  properly
  1220.       match    the filter expression.
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.      Page 19                          (printed 2/6/99)
  1252.  
  1253.  
  1254.  
  1255.